In any imaging system, dealing with contrast is always a compromise since the human visual system can accommodate a dynamic range much larger than one available in a typical imaging input device, such as a surveillance video camera. In low light conditions, video typically becomes very noisy, impairing the image quality and increasing the bit rate required for compressed video. While a noise filtering algorithm reduces video noise resulting in savings in terms of number of quantization bits, the algorithm typically fails to achieve the best visual appearance due to inadequate use of dynamic range.
Hence, a key issue in imaging is accommodating input scene brightness range within the available dynamic range of the imaging device, and it is desirable to have an automatic contrast adjustment. Enhancement algorithms capable of performing this brightness accommodation can be divided into two broad categories: global enhancement (point processes) and local enhancement (spatial processes). Under a global enhancement scheme, every pixel in the image is transformed independent of the values in its neighborhood. From a computational perspective, implementation of such algorithms is highly efficient because they can be applied using a look-up table derived from a transfer function. The transfer function itself is typically computed using global image statistics and a histogram.
In a local enhancement algorithm, the transformed output value of a given pixel depends not only on the input pixel value of the given pixel, but also on the input pixel values of the given pixel's neighbors. While local enhancement algorithms are capable of enhancing image details, they can be computationally expensive, and are prone to artifacts, that is, degradations and/or anomalies, due to enhancement of noise and ringing around edge features in the image. A key objective of local image enhancement is to increase variance of image details while preserving global variance.
The success of conventional global contrast enhancement techniques, namely linear stretching, logarithm transform, power-law transform, piece-wise linear transform, histogram equalization, etc., depends on appropriate parameter selection, which is most often carried out manually by an operator. Local enhancement algorithms selectively amplify local high frequency content, since useful information is mostly associated with edges and other micro details. The Retinex algorithm, based on the color constancy of human vision, is the most well known among the local enhancement schemes. A number of modifications have been proposed to the original single scale Retinex (SSR) algorithm. SSR computes output at every pixel as the difference between log intensity and log of a Gaussian blurred intensity. The output is clipped both at lower and upper saturation setting, enabling dynamic range compression. In one modification, a Multi-scale Retinex (MSR) algorithm, output is a weighted average of a number of SSR filters, each of which has good color constancy and dynamic range compression. Each of the SSR components of MSR uses a Gaussian blurring operator at different scale.
An Automatic Gain Controller (AGC) of a camera attempts to make full use of the available dynamic range. However, under low light conditions, presence of stray bright zones in the scene leads to inadequate use of the dynamic range resulting in a low entropy image. A histogram of such images is not continuous and each image contains a number of intensity clusters. An effective enhancement of such low light images has to get rid of the unused brightness zones. The preferred way to achieve this is to first reduce the contrast through an efficient packing of the histogram, by getting rid of unused zones in the image histogram, followed by a global contrast stretching. The Gray-Level Grouping (GLG) algorithm, proposed by Chen, Z., Abidi, B., Page, D. and Abidi, M., in Gray Level Grouping (GLG): An Automatic Method for Optimized Image Contrast Enhancement—Part I: The Basic Method, IEEE Trans. on Image Processing, Vol. 15, No. 8, pp. 2290-2302, August 2006, achieves this by dividing the histogram into a number of bins based on pre-defined criteria. These bins are distributed equally within the available dynamic range to achieve global enhancement.
Wongsritong K., Kittayaruasiriwat, K., Cheevasuvit, F., Dejhan, K. and Somboonkaew, A., in Contrast Enhancement Using Multi-peak Histogram Equalization with Brightness Preserving, Proc. of 1998 IEEE Asia Pacific Conference on Circuits and Systems: Micro-electronics and Integration Systems, Chiangmai, Thailand, Nov. 24-27, 1998, proposed a multi-peak histogram equalization algorithm that identifies individual peaks in image histogram, each of which are equalized independently.
In U.S. Patent Application Publication No. 2006/0210190, System and Method for Enhancing an Image, Zhang, Y., Taylor, M. and Perisho, R. A., 2006, disclose a zero crossing detector to identify the valleys and peaks in the histogram. These are subsequently used for enhancement using a stored heuristics. U.S. Patent Application Publication No. 2005/0063603, Video Data Enhancement Method, Wang, C., and Kao, C., disclose systematically partitioning the histogram into a number of zones. The enhancement function is constructed by taking into account the minimum, maximum and mean of each zone.
Tretter, D. R., 1995, System and Method for Histogram Based Image Contrast Enhancement, U.S. Pat. No. 6,463,173 B1, discloses partitioning of the histogram into a number of clusters with pattern matching for enhancement. Individual patterns can follow Gaussian or uniform distribution. Subsequently, histogram equalization is applied separately to each cluster.
In addition to spatial or within a frame luminance variation, enhancement of a video sequence has to take into account the temporal aspect of luminance variation, otherwise frame to frame flicker can occur. Commonly used approaches for video enhancement either maintain a frame to frame smooth transition in histogram or continuity in look-up table across the frames. Some authors deal with the flickering by attempting to compensate for the frame to frame luminance change. However, an overall solution addressing optimum usage of available dynamic range is needed.